package hot100;

/**
 * @author aodre , QQ : 480029069
 * @date 2023/9/18 20:44
 */
public class lc59螺旋矩阵II {


    public int[][] solve(int n) {
        int ans[][] = new int[n][n];
        int l = 0, r = n - 1, t = 0, b = n - 1;
        int index = 1;
        while(true){
            for(int i = l;i <= r;i++){
                ans[t][i] = index++;
            }
            if(++t > b){
                break;
            }
            for (int i = t; i <= b ; i++) {  // 这里面的细节 还是要 注意的， 注意哪个大，哪个小
                ans[i][r] = index++;
            }
            if(l > --r){
                break;
            }
            for (int i = r; i >= l ; i--) {
                ans[b][i] = index++;
            }
            if(t > --b){
                break;
            }
            for (int i = b; i >= t ; i--) {
                ans[i][l] = index++;
            }
            if(++l > r){
                break;
            }

        }


        return ans;
    }


}
